package jobascjp;

class Building {
    Building(){ System.out.println("b"); }
    Building(String name){
        this(); System.out.println("bn " + name);
    }
}
public class House extends Building {
    House(){ System.out.println("h ");}
    House(String name){ // rufe Superklasse, hier super() auf Building, Ergebnis Ausgabe b
        this(); System.out.println("hn " + name); // b h hn x 
    }
    public static void main(String[] args) { new House("x "); } // rufe House
    
    /*
     * What is the result?
     * h hn x
     * hn x h
     * b h hn x // korrekt
     * b bn x h
     * bn x h hn x
     * b bn x h hn x
     * bn x b h hn x
     * Compilation fails.
     * 
     * Anmerkungen:
     * Konstruktoren rufen erst ihren Super-Konstruktor und diese koennen 
     * ueberladen werden. 
     */
}
